define(['jquery','api','util','user','text!pages/user/login.html','Vue'],function($,api,util,user,tpl,Vue){
	var vm,
		usedMobile,//使用过的手机号
		$loginForm;
		var controller={
		    init:function () {
			    if(user.isLogin()){
			    	user.loginOut();
			        return;
			    }
		       
		       usedMobile = user.getMobile();
		       var that=this;
		       api.headerShow(0);
		       api.footerShow(0);//隐藏底部导航
		       api.setTitle(L('html_title_user_login'));
			   that.render();
		    },
		    render:function(){
		    	var that=this;
		    	$('#common').html('<div id="login"></div>');
	    		vm=new Vue({
	       	         el:'#login',
	       	         data:{
	       	            show:true,
	       	            form:{
			                mobile:usedMobile?usedMobile:'',
			                pwd:''
		                 }
	       	         },
	       	         methods:{
	       	         	submit:function(){
	       	         		var error=false,
	       	         			data={
	       	         				account:vm.form.mobile,
	       	         				pwd:vm.form.pwd
	       	         			};
	       	         		if(vm.form.mobile==''){
					   	       error='请输入手机号码！';
					   	   }else if(vm.form.pwd==''){
					   	   	   error='请输入密码！';
					   	   }
					   	   if(error){
					   	       util.msg(error);
					   	       return;
					   	   }
					   	   
					       api.login(data,function(rs){
					       	   $("#loginBtn").removeAttr("disabled").val('登录');
								if(rs.retcode==='0'){
									that.saveUser();
									if(typeof window.JSBridge =='object' && typeof window.JSBridge.nativeLoginCompletion=='function'){
										window.JSBridge.nativeLoginCompletion(user.getSessionObject())
									}
				               }else if(rs.retcode !== '0'){
				                    util.dealErrorCode(rs.retcode);
				               }
					       })
	       	         	}
	       	         },
	       	         template:tpl
	       	    });
		    },
		    saveUser:function(){
		    	var that=this;
		    	api.userCore(function(rs){
		    		if(rs.retcode==='0' && rs.data){
		    			// 保存用户名、uid、手机
						user.setUsername(rs.data.username);
						user.setUseraccount(rs.data.useraccount);
						user.setMobile(rs.data.mobile);
						user.setUid(rs.data.uid);
						user.setPid(rs.data.parentaccount);
						user.setWeixinid(rs.data.weixinid);

						if(util.isWxBrowser()){
							that.getWxavatar();//微信头像
						}else{
							that.goHome();
						}
						
						
		    		}else{
		    			util.msg('用户信息获取异常');
		    			that.goHome();
	               }
		    	});
		    },
		    getWxavatar:function(){
		    	var that=this;
		    	
		    	api.wxavatar({
		    		wxid:user.getWeixinid(),
		    		wxdomain:location.host
		    	},function(rs){
		    		if(rs.retcode==='0'){
			    		user.setWeixinAvatar(rs.headimgurl); // 微信头像
			    		user.setNickname(rs.nickname);// 微信昵称
			    		user.setSubscribe(rs.subscribe);// 是否关注公众号，没有就要弹出二维码
			    		
			    		if(rs.subscribe==='0'){
			    			api.showQrcode(); //检测没关注公众号就出现二维码
			    		}else{
			    			that.goHome();
			    		}
		    		}else{
		    			util.msg('获取微信头像失败');
		    			that.goHome();
		    		}
		    	},function(){
		    		that.goHome();
		    	});
		    },
		    goHome:function(){
		    	window.location.hash="#/";
		    },
		    resetForm:function(){ //清除表单
	       		if(vm){
	       			for (i in vm.form) {
   	         			vm.form[i] = '';
   	         		}
	       		}
	       },
	        onRouteChange:function(){
        		if(vm)vm.show = false;
        		this.resetForm();
	        }
    }
    return controller;     
})